package com.lrkj.waitress.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.lrkj.common.annotation.Excel;
import com.lrkj.common.core.domain.BaseEntity;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 客户管理对象 tb_custom_info
 *
 * @author yajun_ren
 * @date 2022-03-17
 */
@Data
public class CustomInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 成员ID */
    private String customId;

    /** 机构ID */
    private String deptId;

    /** 所属小区 */
    private String communityId;

    //客户号
    private String customNo;

    /** 客户姓名 */
    @Excel(name = "客户姓名", sort = 1)
    private String customName;

    /** 客户头像 */
    @Excel(name = "客户头像")
    private String customHeadImg;

    /** 客户类别 */
    @Excel(name = "客户类别" , sort = 2 , dictType="custom_type" ,combo={"个人","公司"})
    private String customType;

    /** 手机号码 */
    @Excel(name = "手机号码" , sort = 3)
    private String cellPhoneNumber;

    /** 身份证号 */
    @Excel(name = "身份证号" , sort = 4 ,width = 30)
    private String idCard;

    /** 性别 */
    private String sex;

    /** 出生日期 */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date birthDate;

    /** 客户编号 */
    private String customNumber;

    /** 公司名称 */
    @Excel(name = "公司名称" , sort = 7 ,width = 30)
    private String corporateName;

    /** 联系地址 */
    @Excel(name = "联系地址" , sort = 8 ,width = 22)
    private String contactAddress;

    /** 联系人 */
    @Excel(name = "联系人" , sort = 9)
    private String linkman;

    /** 状态 */
    private String status;

    /** 祖级ID */
    private String ancestors;

    /** 删除标志 */
    private String delFlag;

    //小区名称
    private String communityName;

    /** 微信id */
    private String openId;

    /** APP用户ID */
    private String appUserId;


    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("customId", getCustomId())
            .append("deptId", getDeptId())
            .append("communityId", getCommunityId())
            .append("customName", getCustomName())
            .append("customHeadImg", getCustomHeadImg())
            .append("customType", getCustomType())
            .append("cellPhoneNumber", getCellPhoneNumber())
            .append("idCard", getIdCard())
            .append("sex", getSex())
            .append("birthDate", getBirthDate())
            .append("customNumber", getCustomNumber())
            .append("corporateName", getCorporateName())
            .append("contactAddress", getContactAddress())
            .append("linkman", getLinkman())
            .append("status", getStatus())
            .append("ancestors", getAncestors())
            .append("delFlag", getDelFlag())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
